/**
    六、面向对象
      1、概念：
      类：
      对象：
 */
/**
 * 6-1、创建对象集几种方法
 *     （1）字面量创建对象
 *     （2）构造函数创建对象
 *     （3）new Object()创建对象
 *     （4）Object.create()创建对象
 *     （5）class关键字创建对象
 *     （6）工厂类创建对象
 */
const obj = new Object({
    name: "小费",
    age: 23,
    gender:"男",
    add: function (obj) {
        console.log("添加对象：", obj)
    }
})
console.log(obj)
obj.add({ name: "小马", school: "而到五小雪人" })
/**
 * 2.工厂类创建对象
 */
function factory(options) {
    const { name, age, sex } = options
    this.name = name
    this.age = age
    this.sex = sex
}

const oldObj = new factory({ name: "小费", age: 25, sex: "男" })
const newObj = new factory({ name: "小费", age: 25, sex: "男" })
console.log("两个对象是否相等：", Object.is(newObj, oldObj))